/**
  ************************************* Copyright ******************************
  * FileName   : oled242.h
  * Version    : v1.0
  * Author     : yychao
  * Date       : 2023-11-15
  * Description:
  * Function List:
  	1. ....
  	   <version>:
  <modify staff>:
  		  <data>:
   <description>:
  	2. ...
  ******************************************************************************
 */

#ifndef __OLED242_H_
#define __OLED242_H_


#include "n32l40x.h"
#include "gpio.h"
#define OLED_SCL_Clr()		gpio_off(GPIOB,GPIO_PIN_13)//SCL
#define OLED_SCL_Set()		gpio_on(GPIOB,GPIO_PIN_13)

#define OLED_SDA_Clr()		gpio_off(GPIOB,GPIO_PIN_15)//SDA
#define OLED_SDA_Set()		gpio_on(GPIOB,GPIO_PIN_15)

#define OLED_RES_Clr()		gpio_off(GPIOA,GPIO_PIN_8)//RES
#define OLED_RES_Set()		gpio_on(GPIOA,GPIO_PIN_8)

#define OLED_DC_Clr()		gpio_off(GPIOA,GPIO_PIN_9)//DC
#define OLED_DC_Set()		gpio_on(GPIOA,GPIO_PIN_9)

#define OLED_CS_Clr()		gpio_off(GPIOA,GPIO_PIN_10)//CS
#define OLED_CS_Set()		gpio_on(GPIOA,GPIO_PIN_10)


#define OLED_CMD  0
#define OLED_DATA 1

#define u8 unsigned char
#define u16 unsigned int
#define u32 unsigned long


void OLED_WR_Byte(uint8_t dat,uint8_t cmd);
void OLED_ColorTurn(uint8_t i);
void OLED_DisplayTurn(uint8_t i);
void OLED_DisPlay_On(void);
void OLED_DisPlay_Off(void);
void OLED_Refresh(void);
void OLED_Clear(uint8_t color);
void OLED_DrawPoint(uint8_t x,uint8_t y,uint8_t t);
void OLED_DrawLine(uint8_t x1,uint8_t y1,uint8_t x2,uint8_t y2,uint8_t mode);
void OLED_DrawCircle(uint8_t x,uint8_t y,uint8_t r);
void OLED_Init(void);
void OLED_ShowChar(u16 x,u16 y, u8 num,u8 size,u8 mode);
void OLED_DrawFont16(u16 x, u16 y, u8 *s,u8 mode);
void OLED_DrawFont24(u16 x, u16 y, u8 *s,u8 mode);
void OLED_ShowStr(u16 x, u16 y, u8 *str,u8 size,u8 mode);
#endif